﻿using HWInfo.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HWInfo
{
    public class HardwareInfo
    {
        private readonly IHardwareInfo hwInfo;

        public HardwareInfo()
        {
            hwInfo = new ARM.RK3399HWInfo();
        }

        public string GetMachineSN(bool encrypt = true)
        {
            return hwInfo.GetMachineSN(encrypt);
        }

        public MemoryStatus MemoryStatus => hwInfo.MemoryStatus;

        public float CpuTemperature => hwInfo.CpuTemperature;

        public float CpuUsage => hwInfo.CpuUsage;


        /// <summary>
        /// 磁盘信息
        /// </summary>
        public List<Disk> HDD => hwInfo.HDD;

        public List<NetworkAdapter> NetworkAdapters => hwInfo.NetworkAdapters;
    }
}
